import axios from 'axios';
import { ElMessage } from 'element-plus'


// 创建 axios 实例
const http = axios.create({
    baseURL: 'http://192.168.164.87:12345/', // 设置默认 API 基础 URL
withCredentials: true // 允许携带凭证（如Cookies）
    
});
// 添加请求拦截器
http.interceptors.request.use(
  config => {
        // 在发送请求之前做些什么
     // 假设你的 Token 存储在 localStorage 中，你可以根据实际情况修改
        const token =  localStorage.getItem('token')
    // 如果 Token 存在，则添加到请求头部
    if (token) {
        console.log(token);
        config.headers['token'] =  token;
    }
    console.log('Sending request to:', config.url);
    return config;
  },
  error => {
    // 对请求错误做些什么
    return Promise.reject(error);
  }
);

// 添加响应拦截器
http.interceptors.response.use(
  response => {
        // 对响应数据做点什么
    return response;
  },
    error => {
        // 对响应错误做点什么
    ElMessage.error('<div class="tip">Error during API request:</div>', error);
    return Promise.reject(error);
  }
);

// 封装 GET 请求
function get(options) {
  options.method = 'get';
    if (options.data) {
        options.params = options.data || {};
    delete options.data
   }
  console.log(options);
  return http(options);
}

// 封装 POST 请求
function post(options) {
  options.method = 'post';
  options.data = options.data || {};
  console.log(options);
  return http(options);
}

function put(options) {
  options.method = 'put';
  options.data = options.data || {};
  console.log(options);
  return http(options);
}
export default { get, post,put };